1. Field of the Invention
The present invention relates to mobile communication applications, and more specifically to a method and apparatus for maintaining session connectivity when a mobile node moves from one layer 3 network to another.
2. Related Art
Mobile nodes refer to devices such as cell phones which are often carried by users from one physical location to another. Mobile nodes are used to communicate with other devices (generally referred to as correspondent nodes) using wireless protocols as is well known in the relevant arts. The communication often forms the basis for applications such as internet multimedia conferences, internet telephone calls and multimedia distribution.
Sessions are generally maintained to support applications between mobile nodes and correspondent nodes as is well known in the relevant arts. Session Initiation Protocol (SIP) is a common application-layer control (signaling) protocol for creating, modifying and terminating sessions as is also well known in the relevant arts. SIP is described in further detail in RFC 2543 entitled, “SIP: Session Initiation Protocol”, available from www.ietf.org, and is incorporated in its entirety herewith.
Sessions in turn are often supported by layer-3 (e.g., Internet Protocol (IP)) network protocols. As is also well known, each mobile node needs to be assigned a layer-3 address. The layer-3 address is typically used by the corresponding correspondent node to send layer-3 packets to the mobile node. The network address portion of layer-3 network is used to route the packets to the mobile node.
Mobile nodes may be moved from one physical location to another. In general, it is desirable to provide seamless and uninterrupted support to applications executing on the mobile nodes even when mobile nodes move from one physical location to the other.
One feature that poses challenges to such support is the fact that devices in different geographical locations often operate using different layer-3 network address spaces for the devices. In general, a node in a layer-3 network can send packets only if the node is assigned a layer-3 address in the address space corresponding to the layer-3 network.
Protocols such as SIP provide a mechanism for a mobile node to operate in different locations served by different layer-3 address spaces. Typically, a mobile node operating at a home location registers with a SIP server (“home server”) of that location. The information on the home server can then be used by correspondent nodes to initiate communication with the mobile node. Irrespective of which node initiates communication, a session is established with a correspondent node using the layer-3 address assigned to the mobile node in the location.
The mobile node can be moved to a new location served by a different layer-3 address space. The mobile node is assigned a new layer-3 address in the different layer-3 address space. The mobile node registers with a SIP proxy server in the new location. Registration generally entails providing an indication of the move and typically also notifying the SIP proxy server of the new IP address.
The SIP proxy server may communicate with the home proxy server to notify the home proxy server of the presence of the mobile node in the new location. Any necessary information may be exchanged between the two servers to enable correspondent nodes to communicate with the mobile node in the new location. Thus, the correspondent nodes can use the information in the home server and/or the proxy server to initiate applications afresh with the mobile node in the new location. The new layer-3 address may be used for the mobile node in the new location.
Thus, using protocols such as SIP, a mobile node may operate from different locations having different IP addresses. However, the approach(es) of above would operate accurately only when sessions (or applications) are started afresh in the new location, but not for sessions (“active session”) which may be active when a mobile node moves to a new location. In other words, for sessions initiated after the move, the new layer-3 address would be used consistently by both the mobile node and the correspondent node, and communication would thus be established accurately.
On the other hand, for sessions which are active when a mobile node moves to the new location, one or both of the mobile node and correspondent node may be designed to continue to operate with the old address of the mobile node. The network (between the two nodes) may not be able to accurately deliver packets to the mobile node as the packets may be routed to the old layer-3 network.
As a result, the packets transmitted by the correspondent node may not be received by the mobile node. Consequently, sessions (and thus applications) which are active prior to a move may fail (terminate) when a mobile node moves from one geographical location to another, which is often undesirable. Therefore, what is needed is a method and apparatus for maintaining session connectivity when a mobile node moves from one layer-3 network to another.